Loading...
 

CX_USER - User

CX_USER

Class hierarchy
Description:

This class represents a user.

Cryptography Information

The user password is stored in hashed form in slot password.password and can be changed with PasswordMA(). With CheckPasswordHash it can be checked whether a clear text password matches the hashed password and with LoginHash the user can be logged in with his rights on the system.

196454

The hash algorithms currently available are "bcrypt" and "SHA1" and are stored in slot password.standard. This slot is automatically set to "bcrypt" by PasswordMA() if not set otherwise. If the slot is not set, the password is hashed with "SHA1". If the used algorithm is changed, then the password must be hashed again by a call to PasswordMA(), because otherwise the hash does not match the password anymore and CheckPasswordHash and LoginHash cannot work correctly.

bcrypt is the cryptographically more secure hash algorithm and should replace SHA1 in the long term.

Code example:
...

List of methods (MDI)
FunctionMA*ParametersReturnBrief description
CheckPassword STRINGINTEGERVerification of the password.
CheckPasswordHash STRINGINTEGERCheck the password (saved password is a hash value).
ClearingObjectOfPartner STRING, INTEGEROBJECT
HasPassword INTEGERINTEGER
Login STRINGINTEGERLog in
LoginHash STRINGINTEGERLog in (saved password is a hash value)
LoginSID INTEGERLogin via SID from DLL version 4.7.176877
Logout Log out
PasswordMA*INTEGER, INTEGER Access to the password (saved password is a hash value)
ReinitializeLogin ?
SanityCheck INTEGERCheck for consistency of the object
SetLogoutTime OBJECT, OBJECT Set logout time
This OBJECT
Access STRING, INTEGEROBJECTReturns access object of the desired type (result is the first object found)
AllAccess STRING, INTEGERVECTOR

197549

COLLECTION

Returns access object of the desired type (result is all objects found)
Address OBJECTDelivers the address
AllocatedObject STRING, INTEGEROBJECTReturns allocated object of the desired type
AllocatedObjectMA*STRING, INTEGER Access to allocated objects of a desired type
Allocation STRING, INTEGEROBJECTReturns allocation of the desired type
AllocationMA*STRING, INTEGER Access to allocation of the desired type
Allocations COLLECTIONAllocations not related to this object
Allocators COLLECTIONAllocations relating to this object
CastedStructureByCondition STRINGOBJECT
ClassFilter STRING, INTEGEROBJECTThis object, if it corresponds to a certain class
ClearingObject STRING, INTEGEROBJECTAssignment to settlement objects
ClearingObjectMA*STRING, INTEGER Assignments to settlement objects
ConditionedFilter STRINGOBJECT
ConditionedFilter2 OBJECTOBJECT
ConnectStateStructure OBJECT, STRING Connect to the status structure
Customer OBJECTDelivers billing object "Customer" (CX_CUSTOMER)
CyberEnterprise OBJECTDelivers billing object "client" (CX_CYBER_ENTERPRISE)
Deleted INTEGERObject marked as deleted?
DeRegisterStructures OBJECT ?
Description STRINGName of this object
Employee OBJECTDelivers payroll object "employee" (CX_EMPLOYEE)
EmployeeByFirstChoiceOfCE OBJECTSupplies the settlement object "Employee" (CX_EMPLOYEE) from the partner who is (if possible) employed by the current client
EmployeeOfCE OBJECTSupplies the settlement object "Employee" (CX_EMPLOYEE) from the partner who is employed by the current client
EvaluateTotalMonitors STRING, INTEGERSTRINGOBJECT?
Fax OBJECTReturns the fax number
Flextimer OBJECTDelivers payroll object "Flexitime employees" (CX_FLEXTIMER)
ForceMonitor STRINGOBJECT?
GeographicPosition OBJECTReturns the geographical position
GetDomain INTEGERDomain of this object
GetSiblings COLLECTIONAll siblings of this object
GetSiblings2 COLLECTIONAll siblings of this object
GetSlotEntries VECTOR<object>>/obReturn of internal information about slots
GetStructure OBJECTOBJECTSearch for a subordinate structure that belongs to the same hierarchy
InsertMonitor OBJECT ?
LastUpdate OBJECTDate of the last write access
LastUser INTEGERUser who last had write access to the object
link OBJECT Add this object to the list of objects with validity
MasterObject OBJECT?
Monitor STRINGOBJECT?
Name INTEGERSTRINGReturn name formatted
NextValidObject OBJECTSubsequent validity object in time
PartnerAccess STRINGOBJECTAssignment to settlement objects
PersonalAccount OBJECTDelivers billing object "Personal account" (CX_PERSONAL_ACCOUNT)
Phone OBJECTReturns the phone number
POBoxAddress OBJECTDelivers the mailbox address
PreviousValidObject OBJECTPrevious validity object in time
RegisterStructures OBJECT ?
RegisteredStructure OBJECT?
RemoveMonitor OBJECT ?
RemoveStateStructure STRING Find status structure by uniqueID and disconnect
Representative OBJECTDelivers billing object "Representative" (CX_REPRESENTATIVE)
RestrictedValidity* Area of validity restricted?
SalaryMan OBJECTDelivers settlement object "Salary recipient" (CX_SALARY_MAN)
SetDomain INTEGER, INTEGER Set domain
SetStructure OBJECT Ensures that a structure becomes a subordinate structure
SexTitle INTEGERSTRINGReturn salutation
ShortName STRINGShort name of this object
Siblings* Objects with validity
Site OBJECTDelivers the pitch
SpanDateValidity* Period of validity
Speech INTEGER, INTEGER, INTEGERSTRINGCreate complete salutation
StateStructure STRINGOBJECTFind status structure after uniqueID (STRING) (not wrapped)
StateStructureWrapper STRINGOBJECTFind status structure by uniqueID
StreetAddress OBJECTReturns the street address
string INTEGERCX_STRINGReturns the string representation of the object
StructureByCondition STRINGOBJECTSubordinate structure with a specific condition
StructureByID STRINGOBJECTSubordinate structure with a certain unique key
StructureByIDMA*STRING Subordinate structures with a certain unique key
StructureByType STRING, INTEGEROBJECTSubordinate structure of a certain type
SubObjects INTEGERCOLLECTION?
Supplier OBJECTDelivers settlement object "Supplier" (CX_SUPPLIER)
Teletex OBJECTReturns the teletex number
Telex OBJECTDelivers the telex number
Title STRINGReturn title
TotalMonitors STRING, INTEGERSTRINGOBJECT?
TriggeredStateStructure STRINGOBJECTAttempts to advance the status structure and returns the new status structure (not wrapped)
TriggeredStateStructureWrapper STRINGOBJECTAttempts to advance the status structure and returns the new status structure (wrapped)
TriggerStateStructures Switches all status structures forward
UniqueID STRINGContent of the fixed data field "uniqueID
Unlink Remove this object from the list of objects with validity
Unlink2 Remove this object from the list of objects with validity
User OBJECTReturns billing object "User" (CX_USER)
Valid OBJECTINTEGERCheck validity
ValidSince OBJECTStart of validity period
ValidToday INTEGERValid today?
ValidUntil OBJECTEnd of validity period
VerifySiblings INTEGERCheck ring of exchange objects

* MA = Member Access function,
grey background = inherited function

Data directory (DDI)
Data fieldTypeReference classI*Brief description
accessControlSIDSTRING SID for login via SID (LoginSID)
accessSecurityPOINTERCX_SECURITY The user's access rights, which are activated when logging into the system.
lastLoginCX_GLOBAL_DATETIME Date and time of last login
lastLogoutCX_GLOBAL_DATETIME Date and time of the last logout
passwordPOINTERCX_EXPANDABLE Password
terminalSTRING Computer name (terminal) where the user is/was logged in
userNumberCX_SHORT User number
allocationsREL_MNCX_EXPANDABLE ?
clearingObjectsREL_MNCX_CLEARING_OBJECT Payroll accounting areas
generalTermsREL_1MCX_GENERAL_TERMS ?
monitorsREL_MNCX_MONITOR ?
partnerREL_1MCX_PARTNER Partner this type describes
partnerCastControlINTEGER Flags
structuresREL_MNCX_EXPANDABLE Organisational Structures
uniqueIDSTRING *Unique key
validityPOINTERCX_VALIDITY Validity period of the object

* I = Indexable data field,
grey background = inherited data field

Use in AppsWH
ModuleBrief description
user.modUser base module
useredt.modUser editing module
usersel.modUser selection module
password.modPassword Module